/*
 * @: 
 * @Version: 1.0
 * @Autor: ziwei
 * @Date: 2021-06-28 09:26:41
 * @LastEditors: ziwei
 * @LastEditTime: 2022-02-11 15:51:06
 */
const { SyncHook} = require('tapable');
debugger
//参数是一个数组 参数长度有用 代表取真实的call的参数的个数，数组里的字符串名字没用
const hook = new SyncHook(['name','age']);
//tab注册事件函数 1名字没啥用
hook.tap("1",(name,age)=>{
    console.log(1,name,age);
})
hook.tap("2", (name, age) => {
    console.log(2, name, age);
})
hook.tap("3", (name, age) => {
    console.log(3, name, age);
})

//call触发事件
hook.call("xiayu",12);

/* 动态创建function
(function anonymous(name, age
  ) {
  "use strict";
  var _context;
  var _x = this._x;
  var _fn0 = _x[0];
  _fn0(name, age);
  var _fn1 = _x[1];
  _fn1(name, age);
  var _fn2 = _x[2];
  _fn2(name, age);
  }) 
  */